package com.itheima.d9_generics_attention;

import java.util.ArrayList;

/*
    泛型的注意事项
        1、泛型是工作在编译阶段的，一旦程序编译成class文件，class文件中就不存在泛型了，这就是泛型擦除。
        2、泛型不支持基本数据类型，只能支持对象类型（引用数据类型）
 */
public class Test {
    public static void main(String[] args) {
        //创建集合对象，泛型参数指定为：String类型
        ArrayList<String> list= new ArrayList<>();
        //向集合中添加元素
        list.add("Java");

        //泛型是作用于编译阶段的技术手段（程序在运行后，泛型就没有作用了【反射技术中会有涉及到】）
        //list.add(100);//报错。 原因：限制了集合中元素的类型为String

        System.out.println(list);

        String s = list.get(0); //编译后：String s = (String) list.get(0);
        System.out.println(s);
    }
}
